UserAccount

interface UserAccount : Facility

Facility that allows the application to register some user account identifier.

The application may register a user account in order to allow GroundSdk to upload data that may disclose user-personal information to the configured remote server. This includes:

  • flight blackboxes,
  • flight logs,
  • full crash reports.
All HTTP requests that upload such data will include the registered user account identifier.

In the absence of such a user account, then by default GroundSdk is not allowed to upload any data to the configured remote server.

However, the application may authorize GroundSdk to upload anonymous data (which do not disclose any user-personal information) to the configured remote server. This includes:

  • anonymous crash reports
The application can opt-in anonymous data upload upon clearing any registered user account, by specifying the desired policy to observe.

Note that GroundSdk may always collect both anonymous and personal data from connected devices and will store them on the user's device, regardless of the presence of any user account. When the application eventually registers a user account, it may at that point indicate what to do with personal data that were collected beforehand, by specifying the desired policy to observe.

User account identifiers, or absence thereof, as well as whether anonymous data upload is allowed (when no user account is registered), are persisted by GroundSdk across application restarts.

By default, there is no registered user account (so personal data upload is denied) and anonymous data upload is also denied.

Types

Link copied to clipboard
Data upload policy.
Link copied to clipboard
Policy to observe with regard to user data that were collected before the user decides to allow data upload.

Functions

Link copied to clipboard
Clears any registered user account.
Link copied to clipboard
abstract fun register(@NonNull accountProvider: String, @NonNull accountId: String, @NonNull token: String, @NonNull droneList: String, @NonNull uploadPolicy: UserAccount.DataUploadPolicy, @NonNull oldDataPolicy: UserAccount.OldDataPolicy)
Registers a user account.
Link copied to clipboard
abstract fun setAuthenticationToken(@NonNull token: String)
Sets the authentication token for currently registered user.
Link copied to clipboard
Sets data policies.
Link copied to clipboard
abstract fun setDroneList(@NonNull droneList: String)
Sets the drone list for currently registered user.